package com.ym.medical.domain.entity;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.ym.common.constant.BaseEntity;
import com.ym.base.enums.FlagEnum;
import com.ym.medical.enums.DeviceTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Table;
import java.util.Date;

/**
 * APP版本变更记录对象 app_version
 *
 * @author ym
 * @date 2020-08-20
 */
@ApiModel("APP版本变更记录-实体")
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "app_version")
public class AppVersionEntity extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	 * 01安卓02苹果
	 */
	@ApiModelProperty("01安卓02苹果")
	@JsonSerialize(converter = DeviceTypeEnum.Covert.class)
	private Integer terminalType;

	/**
	 * 00不启用01启用
	 */
	@ApiModelProperty("00不启用01启用")
	@JsonSerialize(converter = FlagEnum.Covert.class)
	private String enabled;

	/**
	 * 版本号，x.y.z
	 */
	@ApiModelProperty("版本号，x.y.z")
	private String version;

	/**
	 * 更新内容
	 */
	@ApiModelProperty("更新内容")
	private String remark;

	/**
	 * 00不强制01强制
	 */
	@ApiModelProperty("00不强制01强制")
	@JsonSerialize(converter = FlagEnum.Covert.class)
	private String forcedUpdate;

	/**
	 * 生效时间
	 */
	@ApiModelProperty("生效时间")
	private Date startTime;

	/**
	 * 创建人
	 */
	@ApiModelProperty("创建人")
	private Long creator;

	/**
	 * 创建时间
	 */
	@ApiModelProperty("创建时间")
	private Date createTime;

	/**
	 * 修改人
	 */
	@ApiModelProperty("修改人")
	private Long modifier;

	/**
	 * 修改时间
	 */
	@ApiModelProperty("修改时间")
	private Date modifyTime;

}
